perm filename N[GEO,BGB]2 blob
sn#028609 filedate 1973-03-14 generic text, type T, neo UTF8
00100 ;WORD -3.
00200 DEFINE X1DC (Q,E)<NIP Q,-3(E)>↔DEFINE Y1DC (Q,E)<NAP Q,-3(E)>
00300
00400 ;WORD -2.
00500 DEFINE X2DC (Q,E)<NIP Q,-2(E)>↔DEFINE Y2DC (Q,E)<NAP Q,-2(E)>
00600
00700 ;WORD -1.
00800
00900 ;WORD +0.
01000 DEFINE TYPE(Q,E)<CAR Q,(E)>↔DEFINE TYPE. (Q,E)<DIP Q,(E)>
01100 DEFINE $TYPE(Q,E)<LDB Q,[POINT 4,(E),35]>
01200
01300 ;WORD +1.
01400 DEFINE NFACE (Q,E)<CAR Q, 1(E)>↔DEFINE PFACE (Q,E)<CDR Q, 1(E)>
01500 DEFINE NFACE.(Q,E)<DIP Q, 1(E)>↔DEFINE PFACE.(Q,E)<DAP Q, 1(E)>
01600 DEFINE XDC (Q,E)<HLLE Q,1(E)>↔DEFINE YDC (Q,E)<HRLE Q,1(E)>
01700 DEFINE XDC.(Q,E)<HLLM Q,1(E)>↔DEFINE YDC.(Q,E)<HLRM Q,1(E)>
01800
01900 ;WORD +2.
02000 DEFINE NED (Q,E)<CAR Q, 2(E)>↔DEFINE PED (Q,E)<CDR Q, 2(E)>
02100 DEFINE NED. (Q,E)<DIP Q, 2(E)>↔DEFINE PED. (Q,E)<DAP Q, 2(E)>
02200 DEFINE NCNT (Q,E)<NIP Q, 2(E)>↔DEFINE NCNT.(Q,E)<DIP Q, 2(E)>
02300
02400 ;WORD +3.
02500 DEFINE NVT (Q,E)<CAR Q, 3(E)>↔DEFINE PVT (Q,E)<CDR Q, 3(E)>
02600 DEFINE NVT. (Q,E)<DIP Q, 3(E)>↔DEFINE PVT. (Q,E)<DAP Q, 3(E)>
02700
02800 ;WORD +4.
02900 DEFINE NCW (Q,E)<CAR Q, 4(E)>↔DEFINE PCW (Q,E)<CDR Q, 4(E)>
03000 DEFINE NCW. (Q,E)<DIP Q, 4(E)>↔DEFINE PCW. (Q,E)<DAP Q, 4(E)>
03100 DEFINE DAD(Q,E)<CAR Q,4(E)>↔DEFINE DAD.(Q,E)<DIP Q,4(E)>
03200 DEFINE SON(Q,E)<CDR Q,4(E)>↔DEFINE SON.(Q,E)<DAP Q,4(E)>
03300 DEFINE X1DC. (Q,E)<DIP Q, 4(E)>↔DEFINE Y1DC. (Q,E)<DAP Q, 4(E)>
03400
03500 ;WORD +5.
03600 DEFINE NCCW (Q,E)<CAR Q, 5(E)>↔DEFINE PCCW (Q,E)<CDR Q, 5(E)>
03700 DEFINE NCCW. (Q,E)<DIP Q, 5(E)>↔DEFINE PCCW. (Q,E)<DAP Q, 5(E)>
03800 DEFINE BRO(Q,E)<CAR Q,5(E)>↔DEFINE BRO.(Q,E)<DIP Q,5(E)>
03900 DEFINE SIS(Q,E)<CDR Q,5(E)>↔DEFINE SIS.(Q,E)<DAP Q,5(E)>
04000 DEFINE X2DC. (Q,E)<DIP Q, 5(E)>↔DEFINE Y2DC. (Q,E)<DAP Q, 5(E)>
04100
04200 ;WORD +6.
04300 DEFINE ALT (Q,E)<CAR Q, 6(E)>↔DEFINE ALT. (Q,E)<DIP Q, 6(E)>
04400 DEFINE ALT2 (Q,E)<CDR Q, 6(E)>↔DEFINE ALT2.(Q,E)<DAP Q, 6(E)>
04500 DEFINE LOCOR (Q,E)<CDR Q, 6(E)>↔DEFINE LOCOR.(Q,E)<DAP Q, 6(E)>
04510 DEFINE POTEN (Q,E)<CDR Q,6(E)>↔DEFINE POTEN.(Q,E)<DAP Q,6(E)>
04700
04800 ;WORD +7.
04900 DEFINE CW (Q,E)<CAR Q,7(E)>↔DEFINE CW. (Q,E)<DIP Q,7(E)>
05000 DEFINE CCW(Q,E)<CDR Q,7(E)>↔DEFINE CCW.(Q,E)<DAP Q,7(E)>
00100 ; NAMES OF NODE DATA WORDS.
00200
00300 ↓AA ←← ↓XWC ←← -3
00400 ↓BB ←← ↓YWC ←← -2
00500 ↓CC ←← ↓ZWC ←← -1
00600
00700 ↓QQ ←← 3
00800 ↓KK ←← 4
00900
01000 ↓XPP ←← 4↔ ↓YPP ←← 5↔ ↓ZPP ←← 6
01100 ↓IX←←0↔ ↓IY←←1↔ ↓IZ←←2
01200 ↓JX←←3↔ ↓JY←←4↔ ↓JZ←←5
01300 ↓KX←←6↔ ↓KY←←7↔ ↓KZ←←8
01400
01500 ;NODE $ERIAL TYPE NUMBERS.
01600 ↓$EMPTY←←1
01700 ↓$UNIVERSE←←2
01800 ↓$SUN←←3
01900 ↓$CAMERA←←4
02000 ↓$WORLD←←5
02100 ↓$WINDOW←←6
02200 ↓$IMAGE←←7
02300 ↓$BODY ←←10
02400 ↓$FACE ←←11
02500 ↓$EDGE ←←12
02600 ↓$VERT ←←13
00100 ;TYPE BIT OPERATIONS.
00200
00300 DEFINE MARK(Q,BITS){
00400 IFE BITS⊗-22,{LACI BITS}
00500 IFN BITS⊗-22,{SLACI(BITS)}
00600 IORM(Q)}
00700
00800 DEFINE MARKZ(Q,BITS){
00900 IFE BITS⊗-22,{LACI BITS}
01000 IFN BITS⊗-22,{SLACI(BITS)}
01100 ANDCAM (Q)}
01200
01300 DEFINE TEST(Q,BITS){
01400 LAC(Q)
01500 IFE BITS⊗-22,{TRNN BITS }
01600 IFN BITS⊗-22,{TLNN(BITS)}}
01700
01800 DEFINE TESTZ(Q,BITS){
01900 LAC(Q)
02000 IFE BITS⊗-22,{TRNE BITS }
02100 IFN BITS⊗-22,{TLNE(BITS)}}
02200
02300 ; PROPERTY-TYPE BITS.
02400 ↓OBIT ←← 1B18 ;OBJECT.
02500 ↓BBIT ←← 1B17
02600 ↓FBIT ←← 1B16
02700 ↓EBIT ←← 1B15
02800 ↓VBIT ←← 1B14
02900
03000 ↓PZZ ←← 1B9
03100 ↓NZZ ←← 1B10
03200
03300 ↓FOLDED ←← 1B11
03400 ↓VISIBLE ←← 1B12
03500 ↓POTENT ←← 1B13
03600 ↓DARKEN ←← 1B3
03700
03800 ↓NORTH ←← 1B5
03900 ↓SOUTH ←← 1B6
04000 ↓EAST ←← 1B7
04100 ↓WEST ←← 1B8
04200 ↓NSEW ←← 17B8
04300
04400 ↓JUTBIT ←← 1B3
04500 ↓JOTBIT ←← 1B4
04600 DEFINE HIDE(Q){
04700 SLACI(3B13)↔ANDCAM(Q)}
04800
04900 ↓TMPBIT ←← 1B2
05000 ↓BDLBIT ←← 1B1 ;BODY OPERATION DISABLE LOCOR ACTION.
05100 ↓BDVBIT ←← 1B3 ;BODY OPERATION DISABLE VERTEX ACTION.
05200 ↓BDPBIT ←← 1B4 ;BODY OPERATION DISABLE PARTS ACTION.